<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:a4j="http://richfaces.org/a4j"
	xmlns:rich="http://richfaces.org/rich"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:cc="http://java.sun.com/jsf/composite">

<cc:interface>
	<cc:attribute name="bean" required="true"
		shortDescription="Bean que contiene todas las funcionalidades requeridas para mostrar la tabla" />
	<cc:attribute name="property" required="true"
		shortDescription="Valor que se mostrará en cada casilla de la tabla. Se diferencia del propertyVal en que, en el caso de los combos, el propertyVal sería el Id del valor, y el property sería el label." />
	<cc:attribute name="propertyVal"
		shortDescription="Propiedades EL usadas para acceder al valor de la columna desde el bean principal de la tabla, se resuelven en Benas JPA." />
	<cc:attribute name="propertyTitle" required="true"
		shortDescription="Clave del mensaje que debe aparecer en el título de la columna" />
	<cc:attribute name="record" required="true"
		shortDescription="Valor del iterador de la tabla para mostrar los valores en las filas" />
</cc:interface>
<cc:implementation>
	<rich:column sortBy="#{cc.attrs.propertyVal}"
		sortOrder="#{bean.sortOrders[cc.attrs.propertyVal]}"
		filterValue="#{bean.filterValues[cc.attrs.propertyVal]}"
		filterExpression="#{cc.attrs.propertyVal}">

		<f:facet name="header">

			<h:commandLink action="#{cc.attrs.bean.toggleSort}">
				<h:outputLabel value="#{msg[cc.attrs.propertyTitle]}" />
				<h:graphicImage value="/resources/images/sort_asc.png"
					rendered="#{cc.attrs.bean.sortOrders[cc.attrs.property]} is ascending" />
				<h:graphicImage value="/resources/images/sort_desc.png"
					rendered="#{cc.attrs.bean.sortOrders[cc.attrs.property]} is descending" />
                #{cc.attrs.bean.sortOrders[cc.attrs.property]}
                <a4j:ajax render="richTable" />
				<f:setPropertyActionListener target="#{cc.attrs.bean.sortProperty}"
					value="#{cc.attrs.propertyVal}" />
			</h:commandLink>
			
		</f:facet>
		<h:outputText
			value="#{fn:substring(cc.attrs.record[cc.attrs.property],0,50)}"
			title="#{cc.attrs.record[cc.attrs.property]}" />
	</rich:column>
</cc:implementation>
</html>